7 research outputs found

    Affine Multibanking for High-Level Synthesis

    Get PDF
    International audienceIn the last decade, FPGAs appeared as a credible alternative for big data and high-performance computing applications. However, programming an FPGA is tedious: given a function to implement, the circuit must be designed from scratch by the developer. In this short paper, we address the compilation of data placement under parallelism and resource constraints. We propose an HLS algorithm able to partition the data across memory banks, so parallel accesses will target distinct banks to avoid data transfer serialization. Our algorithm is able to reduce the number of banks and the maximal bank size. Preliminary evaluation shows promising results

    Affine Multibanking for High-Level Synthesis

    Get PDF
    In the last decade, FPGAs appeared as a credible alternative for big data and high-performance computing applications. However, programming an FPGA is tedious: given a function to implement, the circuit configuration must be built from scratch by the developer. Hence the emergence of high-level circuit compilers (high-level synthesis, HLS), able to translate a C program to an FPGA circuit configuration. Unlike software parallelization, there is no operating system to place the computation and the memory at runtime. All the parallelization decisions must be done at compile time. In this report, we address the compilation of data placement under parallelism and resource constraints. We propose an HLS algorithm able to partition the data across memory banks, so parallel access will target distinct banks to avoid data transfer serialization. Our algorithm is able to minimize the number of banks and the maximal bank size.Dans la derniere decennie, les FPGA sont apparus comme une alternative credible pour le big data et le calcul haute performance. Malheureusement, la programmation des FPGA requiert la conception d’une configuration de circuit, ce qui est hors d’atteinte pour un programmeur. D’oĂč l’émergence de la synthĂšse de circuit haut-niveau (High-Level Synthesis, HLS), capable de compiler un code C canonique en configuration de circuit FPGA. Contrairement `a la parallĂ©lisation logicielle, toutes les dĂ©cisions de placement des donnĂ©es et des calculs doivent ĂȘtre prises statiquement, Ă  la compilation. Dans ce rapport, nous ÌĂ©tudions la compilation d’un placement de donnĂ©es sous contrainte de parallĂ©lisme et de taille. Nous proposons un algorithme de HLS capable de partitionner les donnĂ©es sur des bancs, de sorte que deux donnĂ©es accĂ©dĂ©es en mĂȘme temps soient sur deux bancs diffĂ©rents, et puissent ainsi ĂȘtre accessibles en parallĂšle.Notre algorithme est capable de trouver une partition qui minimise le nombre de bancs et la taille maximale d’un banc

    SafeLS: Toward Building a Lockstep NOEL-V Core

    Full text link
    Safety-critical systems such as those in automotive, avionics and space, require appropriate safety measures to avoid silent data corruption upon random hardware errors such as those caused by radiation and other types of electromagnetic interference. Those safety measures must be able to prevent faults from causing the so-called common cause failures (CCFs), which occur when a fault produces identical errors in redundant elements so that comparison fails to detect the errors and a failure arises. The usual solution to avoid CCFs in CPU cores is using lockstep cores, so that two cores execute the same flow of instructions, but with some time staggering so that their state is never identical and faults can only lead to different errors, which are then detectable by means of comparison. This paper extends Gaisler's RISC-V NOEL-V core with lockstep; and presents future prospects for its use and distribution.Comment: Abstract presented at the RISC-V Summit, June 2023, Barcelona (Spain

    SafeX: Open source hardware and software components for safety-critical systems

    Get PDF
    RISC-V Instruction Set Architecture (ISA) emerges as an opportunity to develop open source hardware without being subject to expensive licenses or export restrictions. A plethora of initiatives are nowadays developing systems-on-chip (SoCs) and its components based on RISC-V targeting a wide variety of markets. However, domains with safety requirements, such as avionics, space, and automotive, impose SoCs to include support to meet those requirements.This work introduces the SafeX family of components, a set of components providing SoC controllability, observability and safety measures support. These components, developed by the Barcelona Supercomputing Center with permissive open source licenses, are intended to be the basis to make SoCs meet the needs of domains with safety requirements. In particular, the SafeX components developed so far include the SafeSU (multicore statistics unit), the SafeTI (flexible and programmable traffic injector), the SafeDE and SafeSoftDR (hardware and software modules to enforce lockstep execution), and the SafeDM (module to monitor diversity across cores).This work has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement no. 871467. This work has also been partially supported by the Spanish Ministry of Science and Innovation under grant PID2019-107255GB-C21 funded by MCIN/AEI/10.13039/501100011033.Peer ReviewedPostprint (author's final draft

    SafeLS: An open source implementation of a lockstep NOEL-V RISC-V core

    Get PDF
    Microcontrollers running safety-critical applications with high integrity requirements must provide appropriate safety measures to manage random hardware faults. For instance, automotive safety regulations (e.g., ISO26262) impose the use of diverse redundancy for items at the highest automotive safety integrity level (ASIL), ASIL-D. In the case of computing cores, this is realized with dual core lockstep (DCLS). The advent of the RISC-VISA has made open source hardware gain popularity. However, there are few industrial open source SoCs meeting the requirements of safety-critical systems, and, to our knowledge, none of them provides lockstep cores. This paper presents the realization of a RISC-V open source lockstep core based on Gaisler's NOEL-V core for the space domain, as well as its integration in the SELENE SoC that provides a complete microcontroller synthesizable on FPGA successfully assessed against space, automotive and railway safety-critical applications in the past.This work is part of the European Union’s Horizon 2020 Programme under project KDT Joint Undertaking (JU) under grant agreement No 101112274 (ISOLDE). This work has also been partially supported by the Spanish Ministry of Science and Innovation under grant PID2019-107255GB-C21 funded by MCIN/AEI/10.13039/501100011033.Peer ReviewedPostprint (author's final draft

    Affine Multibanking for High-Level Synthesis

    Get PDF
    In the last decade, FPGAs appeared as a credible alternative for big data and high-performance computing applications. However, programming an FPGA is tedious: given a function to implement, the circuit configuration must be built from scratch by the developer. Hence the emergence of high-level circuit compilers (high-level synthesis, HLS), able to translate a C program to an FPGA circuit configuration. Unlike software parallelization, there is no operating system to place the computation and the memory at runtime. All the parallelization decisions must be done at compile time. In this report, we address the compilation of data placement under parallelism and resource constraints. We propose an HLS algorithm able to partition the data across memory banks, so parallel access will target distinct banks to avoid data transfer serialization. Our algorithm is able to minimize the number of banks and the maximal bank size.Dans la derniere decennie, les FPGA sont apparus comme une alternative credible pour le big data et le calcul haute performance. Malheureusement, la programmation des FPGA requiert la conception d’une configuration de circuit, ce qui est hors d’atteinte pour un programmeur. D’oĂč l’émergence de la synthĂšse de circuit haut-niveau (High-Level Synthesis, HLS), capable de compiler un code C canonique en configuration de circuit FPGA. Contrairement `a la parallĂ©lisation logicielle, toutes les dĂ©cisions de placement des donnĂ©es et des calculs doivent ĂȘtre prises statiquement, Ă  la compilation. Dans ce rapport, nous ÌĂ©tudions la compilation d’un placement de donnĂ©es sous contrainte de parallĂ©lisme et de taille. Nous proposons un algorithme de HLS capable de partitionner les donnĂ©es sur des bancs, de sorte que deux donnĂ©es accĂ©dĂ©es en mĂȘme temps soient sur deux bancs diffĂ©rents, et puissent ainsi ĂȘtre accessibles en parallĂšle.Notre algorithme est capable de trouver une partition qui minimise le nombre de bancs et la taille maximale d’un banc

    Affine Multibanking for High-Level Synthesis

    No full text
    International audienceIn the last decade, FPGAs appeared as a credible alternative for big data and high-performance computing applications. However, programming an FPGA is tedious: given a function to implement, the circuit must be designed from scratch by the developer. In this short paper, we address the compilation of data placement under parallelism and resource constraints. We propose an HLS algorithm able to partition the data across memory banks, so parallel accesses will target distinct banks to avoid data transfer serialization. Our algorithm is able to reduce the number of banks and the maximal bank size. Preliminary evaluation shows promising results
    corecore